package com.exam.api.modules.dict.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.validator.constraints.Length;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
* 字典
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Schema(title = "SysDict对象", description="字典")
public class SysDictVO implements Serializable {

    /**
    * 主键：
    */
    @Schema(description = "")
    private Long id;

    /**
    * 字典编码
    */
    @Schema(description = "字典编码")
    @Length(max= 60,message="编码长度不能超过60")
    private String code;
    /**
    * 字典名称
    */
    @Schema(description = "字典名称")
    @Length(max= 200,message="编码长度不能超过200")
    private String name;
    /**
    * 字典描述
    */
    @Schema(description = "字典描述")
    @Length(max= -1,message="编码长度不能超过-1")
    private String description;
    /**
    * 字典类型
    */
    @Schema(description = "字典类型")
    private Integer type;
    /**
    * 0正常 1停用
    */
    @Schema(description = "0正常 1停用")
    private Integer status;
    /**
    * 0正常 1删除
    */
    @Schema(description = "0正常 1删除")
    private Integer isDelete;
    /**
    * 创建时间
    */
    @Schema(description = "创建时间")
    private LocalDateTime createTime;
    /**
    * 创建人
    */
    @Schema(description = "创建人")
    private Long createUserId;
    /**
    * 更新时间
    */
    @Schema(description = "更新时间")
    private LocalDateTime updateTime;
    /**
    * 更新人
    */
    @Schema(description = "更新人")
    private Long updateUserId;
    /**
    * 部门id
    */
    @Schema(description = "部门id")
    private Long deptId;

    @Serial
    private static final long serialVersionUID=1L;
}
